/*
 * ficheros.h
 *
 *  Created on: 22/03/2010
 *      Author: teledhil
 */

#ifndef FICHEROS_H_
#define FICHEROS_H_

#include "listas.h"

struct file_info {
	char nombre[1000]; // nombre fichero
	int fd; // descriptor del fichero
	//	long	offset;				// offset almacenado en fichero
	//	long	size;				// tamanho del fichero
};

struct file_info * crear_fichero(char *nombre); // Sobreescribe!!
//Crea un fichero y lo abre en modo escritura

struct file_info * abrir_fichero(char *nombre);
// Abre un fichero existente en modo lectura

int escribir_offset_fichero(struct file_info *fichero, long offset,
		char *datos, int longDatos);
// Escribe los _longDatos_ bytes de _datos_ en el fichero indicado a partir
// de la posicion _offset_

int escribir_append_fichero(struct file_info *fichero, char *datos,
		int longDatos);
// Escribe los _longDatos_ bytes de _datos_ al final del fichero indicado

int leer_offset_fichero(struct file_info *fichero, long offset, char *datos,
		int longDatos);
// Lee los _longDatos_ bytes de _datos_ del fichero indicado a partir
// de la posicion _offset_

lista * buscar_ficheros(char *palabras_clave);
// Cierra el fichero
// de la posicion _offset_

int cerrar_fichero(struct file_info *fichero);
// Cierra el fichero


#endif /* FICHEROS_H_ */
